generateReducersList <- function(){
	
outList <- list()
outListCnt <-1
#generate PCA / kPCA dimChoosers
	pcDimChList <- list()
	pcDimChList[["kgdc"]]	<- new("KGDimChooser",1,1)
	pcDimChList[["bsdc"]]	<- new("BStickDimChooser",1,1)
	#pcDimChList[["velRed"]]	<- new("VelicerDimChooser",1,1)
	
	for(i in 1:length(pcDimChList)){
		outList[[outListCnt]] <- new("PCAReducer",pcDimChList[[i]])
		outListCnt <- outListCnt+1
		outList[[outListCnt]] <- new("kPCAReducer",pcDimChList[[i]])
		outListCnt <- outListCnt+1
	}
#generate MDS
	
	scree <- new("ScreeDimChooser",2,2)
	outList[[outListCnt]] <- new("MDSReducer",scree)
	outListCnt <- outListCnt+1
#generate LLE reducer
	r2dc <-new("R2DimChooser",2,2)
	outList[[outListCnt]] <- new("LLEReducer",r2dc)
	outListCnt <- outListCnt+1
	
	return(outList)
}

genrateReducersListComp <-function(){
	
	outList <- list()
	outListCnt <-1
#generate PCA / kPCA dimChoosers
	pcDimChList <- list()
	pcDimChList[["kgdc"]]	<- new("KGDimChooser",1,1)
	pcDimChList[["bsdc"]]	<- new("BStickDimChooser",1,1)
	#pcDimChList[["velRed"]]	<- new("VelicerDimChooser",1,1)
	
	for(i in 1:length(pcDimChList)){
		outList[[outListCnt]] <- new("ReduceListComputer",new("PCAReducer",pcDimChList[[i]]))
		outListCnt <- outListCnt+1
		outList[[outListCnt]] <- new("ReduceListComputer",new("kPCAReducer",pcDimChList[[i]]))
		outListCnt <- outListCnt+1
	}
#generate MDS
	
	scree <- new("ScreeDimChooser",2,2)
	outList[[outListCnt]] <- new("ReduceListComputer",new("MDSReducer",scree))
	outListCnt <- outListCnt+1
#generate LLE reducer
	r2dc <-new("R2DimChooser",2,2)
	outList[[outListCnt]] <-new("ReduceListComputer", new("LLEReducer",r2dc))
	outListCnt <- outListCnt+1
	
	return(outList)
	
}